﻿// 4753. 失落的复仇.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://www.acwing.com/problem/content/4756/

给定一个基因序列和 N
 个基因片段，它们都是只包含 A、C、G、T 的字符串。

我们规定，一个基因序列的价值等于所有 N
 个基因片段在该序列中出现的次数之和。

一个片段在序列中出现多次应多次计数，不同出现之间可以重叠。

现在，你可以重新排列给定的基因序列，即将基因序列字符串中的字符进行重新排序。

请计算，重排后的基因序列的最大可能价值。

输入格式
输入包含多组测试数据。

每组数据第一行包含整数 N
。

接下来 N
 行，每行包含一个基因片段。注意，如果多个基因片段完全相同，则每个基因片段的价值都应予以计数。

最后一行，包含给定基因序列。

当输入 N=0
 时，表示输入结束，无需处理。

输出格式
每组数据输出一行结果，格式为 Case x: y，其中 x
 为组别编号（从 1
 开始），y
 为重排后的基因序列的最大可能价值。

数据范围
输入最多包含 30
 组测试数据。
1≤N≤50
,
基因片段长度范围 [1,10]
,
基因序列长度范围 [1,40]
。

输入样例：
3
AC
CG
GT
CGAT
1
AA
AAA
2
AA
AA
AAA
0
输出样例：
Case 1: 3
Case 2: 2
Case 3: 4
*/
int main()
{
    std::cout << "Hello World!\n";
}
 